
package pos.entity;


import java.math.BigInteger;
import java.sql.Connection;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

/**
 * This class is the Item entity object stores the attributes of the Item table
 * @author srikanth ramu
 */
public class Item {
    
    //Private column variables
    private long id = 0;
    private String name = null;
    private String upCode = null;
    private String desc = null;
    private Double basePrice = null;
    private Date DateTimeOfManufacture;
    private Date ExpiryDateTime;
    private Date DateTimeCreated;
    private Date DateTimeModified;
    private Double Discount;

    public Double getDiscount() {
        return Discount;
    }

    public void setDiscount(Double Discount) {
        this.Discount = Discount;
    }

    public static String getTableName(){
        return "ITEM";
    }
    /**
     * Returns the base price
     * @return 
     */
    public Double getBasePrice() {
        return basePrice;
    }

    /**
     * Sets the base price
     * @param basePrice 
     */
    public void setBasePrice(Double basePrice) {
        this.basePrice = basePrice;
    }

    /**
     * Sets the item identifier
     * @param id 
     */
    public void setID(long id){
        this.id = id;
    }

    /**
     * Returns the id
     * @return 
     */
    public long getID(){
        return id;
    }

    /**
     * Sets the name
     * @param name 
     */
    public void setName(String name){
        this.name = name;
    }

    /**
     * Returns the name
     * @return 
     */
    public String getName(){
        return name;
    }
    /**
     * Sets the description
     * @param desc 
     */
    public void setDesc(String desc){
        this.desc = desc;
    }

    public String getDesc(){
        return desc;
    }
    /**
     * Sets the UPC 
     * @param upCode 
     */
    public void setUPCode(String upCode){
        this.upCode = upCode;
    }

    /**
     * Returns the UPC
     * @return 
     */
    public String getUPCode(){
        return upCode;
    }

    public void setDateTimeOfManufacture(Date DateTimeOfManufacture) {
        this.DateTimeOfManufacture = DateTimeOfManufacture;
    }

    public void setExpiryDateTime(Date ExpiryDateTime) {
        this.ExpiryDateTime = ExpiryDateTime;
    }

    /**
     * Sets the base price
     * @param basePrice 
     */
    public void setBasePrice(double basePrice) {
        this.basePrice = basePrice;
    }

    public Date getDateTimeOfManufacture() {
        return DateTimeOfManufacture;
    }

    public Date getExpiryDateTime() {
        return ExpiryDateTime;
    }

    public Date getDateTimeCreated() {
        return DateTimeCreated;
    }

    /**
     * Returns the modified time
     * @return 
     */
    public Date getDateTimeModified() {
        return DateTimeModified;
    }  
}
